Remove limonp dependency#237
Merged
Merged
Conversation
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
Inline the small subset of limonp helpers that cppjieba actually uses so the project no longer needs the limonp submodule at build or checkout time. The new cppjieba/Utils.hpp keeps the existing compatibility surface: LocalVector still exposes const T* iterators for code that depends on pointer-style begin()/end(), Split/Join/Trim/StartsWith preserve the existing string helper behavior, and XLOG/XCHECK keep the existing logging/checking API used throughout the headers. Replace limonp includes and namespace references with the local helpers, use standard C++11 unordered containers directly, and remove the test-only Colors dependency by printing plain benchmark timing output. Drop .gitmodules, the deps/limonp gitlink, CMake limonp discovery/include paths, the Bazel limonp target, checkout submodule options in CI, and README submodule setup instructions. Record the dependency removal in a new Unreleased changelog entry while preserving historical release notes. Validated with: cmake --build /private/tmp/cppjieba-remove-limonp-cmake --config Release; ctest --test-dir /private/tmp/cppjieba-remove-limonp-cmake -C Release --verbose; npx --yes @bazel/bazelisk test //:bazel_smoke_test.
78e0c42 to
fb6e47f
Compare
yanyiwu
approved these changes
Jun 9, 2026
yanyiwu
left a comment
Owner
There was a problem hiding this comment.
已核对内联的 Split/Join/Trim/StartsWith、LocalVector 和日志接口与当前 limonp 实现的兼容性,并确认 Bazel、CMake、Windows ARM64 三套 CI 全部通过。移除 submodule、构建配置和文档引用的范围完整,可以合并。
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Inline the small subset of
limonphelpers thatcppjiebaactually uses so the project no longer needs thelimonpsubmodule at build or checkout time.The new
cppjieba/Utils.hppkeeps the existing compatibility surface:LocalVectorstill exposesconst T*iterators for code that depends on pointer-stylebegin()/end(),Split/Join/Trim/StartsWithpreserve the existing string helper behavior, andXLOG/XCHECKkeep the existing logging/checking API used throughout the headers.Replace
limonpincludes and namespace references with the local helpers, use standard C++11 unordered containers directly, and remove the test-onlyColorsdependency by printing plain benchmark timing output.Drop
.gitmodules, thedeps/limonpgitlink, CMakelimonpdiscovery/include paths, the Bazellimonptarget, checkout submodule options in CI, and README submodule setup instructions.Validated with:
cmake --build /private/tmp/cppjieba-remove-limonp-cmake --config Releasectest --test-dir /private/tmp/cppjieba-remove-limonp-cmake -C Release --verbosenpx --yes @bazel/bazelisk test //:bazel_smoke_test